package br.siseventos.view.conversores;

import br.siseventos.model.TdPerfil;
import br.siseventos.service.PerfilService;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
import javax.faces.convert.FacesConverter;

@FacesConverter(value = "perfilConversor")
public class ConversorPerfil extends BaseConverter {
    // <editor-fold desc="Campos">
    private PerfilService perfilService = new PerfilService();
    // </editor-fold>
    // <editor-fold desc="Construtor">
    public ConversorPerfil() {
    }
    // </editor-fold>
    // <editor-fold desc="Sobrescrita">
    @Override
    public Object getAsObject(FacesContext context, UIComponent component, String value) {
        // Transformar string em objeto
        TdPerfil perfil = null;
        try {
            perfil = perfilService.consultar(Integer.parseInt(value));
        } catch (NumberFormatException ex) {
        } catch (Exception ex) {
        }
        return perfil;
    }

    @Override
    public String getAsString(FacesContext context, UIComponent component, Object value) {
        // Transformar objeto em string
        String r = null;
        try {
            if (value instanceof TdPerfil) {
                r = ((TdPerfil) value).getIdtPerfil().toString();
            }
        } catch (Exception e) {
        }
        return r;
    }
// </editor-fold>
}
